package com.huangli.coder;

import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.app.ActivityManager;
import android.content.Context;

/**
 * 
 * Description:
 * activity栈管理类，每当新产生一个activity时就加入，finish掉一个activity时就remove，这样到最后需要
 * 
 * 完全退出程序时就只要调用finishProgram方法就可以将程序完全结束。
 * 
 */
public class ActivityList {

	public static List<Activity> activityList = new ArrayList<Activity>();

	public static void exitClient(Context context) {
		// 关闭所有Activity
		for (int i = 0; i < activityList.size(); i++) {
			if (null != activityList.get(i)) {
				activityList.get(i).finish();
				System.out.println(activityList.get(i) + "------finish");
			}
		}
		ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
		activityManager.restartPackage("com.huangli.coder");
		// Android的程序只是让Activity finish()掉,而单纯的finish掉,退出并不完全
		System.exit(0);
	}
}
